Tarea 2

Carga de Paquetes

Se hace uso de los paquetes DT para crear la tabla y de ggplot2 para crear los gráficos.

library(dplyr)
library(readr)
library(ggplot2)
library(plotly)
library(DT)
library(readxl)
library(graphics)
library(stats)

Tabla

La tabla muestra las columnas: Delito, Fecha, Víctima, Edad, Género, Provincia y Cantón. Extraídos del conjunto de datos de estadísticas policiales del 2021 en Costa Rica.

# Carga

datos_policiales <-
  read_excel("C:/Users/Fiorela/Downloads/estadisticaspoliciales2021.xls")
datos_policiales$Fecha <- as.Date(datos_policiales$Fecha, format = "%d/%m/%Y")
# Transformación

datos_policiales <-
  datos_policiales %>%
  select(Delito, Fecha, "Víctima" = Victima, Edad, "Género" = Genero, Provincia, "Cantón" = Canton) %>%
  mutate(Fecha = as.Date(Fecha, format = "%d/%m/%Y"))
# Visualización Tabular

datos_policiales %>%
  datatable(options = list(pageLength = 10,
    language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json')))
## Warning in instance$preRenderHook(instance): It seems your data is too big
## for client-side DataTables. You may consider server-side processing: https://
## rstudio.github.io/DT/server.html

Gráficos

Gráfico 1

# Gráfico de barras simples con cantidad de cada Delito

grafico_cantidad_delito <-
  datos_policiales %>%
  count(Delito) %>% 
  ggplot(aes(x = reorder(Delito, n), y = n)) +
  geom_bar(stat = "identity") +
  ggtitle("Cantidad de Delitos cometidos en Costa Rica - 2021") +
  xlab("Tipo de Delito") +
  ylab("Cantidad de Delitos") +
  coord_flip() +
  theme_get()
  

# Gráfico plotly

grafico_cantidad_delito %>%
  ggplotly() %>% 
  config(locale = 'es')

Gráfico 2

# Gráfico de barras simples con delitos cometidos por mes

datos_policiales <-
  datos_policiales %>%
  mutate(mes = format(Fecha, "%B")) %>%
  select(Delito, Fecha, Víctima, Edad, Género, Provincia, Cantón, mes) %>%
  mutate(Fecha = as.Date(Fecha, format = "%d/%m/%Y"))

grafico_delitos_por_mes <-
  datos_policiales %>%
  ggplot(aes(x = mes)) +
  geom_bar() +
  ggtitle("Delitos cometidos por mes en Costa Rica - 2021") +
  xlab("Meses") +
  ylab("Cantidad de Delitos") +
  coord_flip() +
  theme_get()


# Gráfico plotly

grafico_delitos_por_mes %>%
  ggplotly() %>% 
  config(locale = 'es')

Gráfico 3

# Gráfico de barras apiladas de proporción

proporcion_delitos_genero <-
  datos_policiales %>%
  ggplot(aes(x = Delito, fill = Género)) +
  geom_bar(position = "fill") +
  ggtitle("Proporciones de delitos por género en Costa Rica - 2021") +
  xlab("Tipo de delito") +
  ylab("Proporción") +
  labs(fill = "Género") +
  coord_flip() +
  theme_get()

proporcion_delitos_genero %>%
  ggplotly() %>% 
  config(locale = 'es')

Gráfico 4

# Gráfico de barras con cantidad de delito por cantón

grafico_cantones <-
  filter(datos_policiales,
         grepl('HEREDIA|ALAJUELA|CARTAGO|SAN JOSE', Cantón))
  
  
grafico_delitos_canton <-
  ggplot(data = grafico_cantones, aes(x = Cantón)) +
  geom_bar() +
  ggtitle("Cantidad de delitos por cantón en Costa Rica - 2021") +
  xlab("Cantones") +
  ylab("Cantidad de Delitos") +
  theme_get()

grafico_delitos_canton %>%
  ggplotly() %>% 
  config(locale = 'es')